/*
 * @Description: 集合方法测试
 * @Author: rendc
 * @Date: 2025-08-11 11:10:15
 * @LastEditors: rendc
 * @LastEditTime: 2025-08-11 14:30:10
 */

import java.util.Collection;
// import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;

public class CollectionTest02 {
  // Collection
  public static void main(String[] args) {
    // // 创建一个集合
    // // 根接口 Collection 子接口 List 实现类 ArrayList
    // // 创建集合对象时一般要指定泛型
    // Collection<String> coll1 = new ArrayList<>();
    // Collection<String> coll2 = new ArrayList<>();
    // coll2.add("world");
    // coll2.add("!");
    // Collection<String> coll3 = new ArrayList<>(coll2);
    // // 这个集合只能存放String类型
    // // boolean add(E var1);
    // coll1.add("hello");
    // // boolean addAll(Collection<? extends E> var1);
    // coll1.addAll(coll2);
    // // boolean contains(Object var1);
    // boolean flag1 = coll1.contains("hello");
    // System.out.println("coll1.contains(\"hello\"):" + flag1);
    // boolean flag2 = coll1.contains(coll2);
    // System.out.println("coll1.contains(\"coll2\"):" + flag2);// boolean
    // containsAll(Collection<?> var1);
    // boolean flag3 = coll1.containsAll(coll2);
    // System.out.println("coll1.containsAll(\"coll2\"):" + flag3);
    // // Object[] toArray();
    // Object[] objArr = coll1.toArray();
    // System.out.println(objArr);
    // System.out.println(Arrays.toString(objArr));
    // // boolean remove(Object var1);
    // coll1.remove("!");
    // // void clear();
    // coll2.clear();
    // coll2.add("hi");
    // System.out.println("coll1:" + coll1);
    // System.out.println("coll2:" + coll2);
    // // boolean removeAll(Collection<?> var1);
    // boolean flag4 = coll1.removeAll(coll2);
    // System.out.println("flag4:" + flag4);
    // // boolean equals(Object var1);
    // boolean flag5 = coll1.equals(coll3);
    // System.out.println("flag5:" + flag5);
    // // int hashCode();
    // System.out.println("coll1.hashCode():" + coll1.hashCode());
    // System.out.println("coll2.hashCode():" + coll2.hashCode());
    // System.out.println("coll3.hashCode():" + coll3.hashCode());
    // System.out.println("coll1:" + coll1);
    // System.out.println("coll2:" + coll2);
    // System.out.println("coll3:" + coll3);
    // // 此处的toString来源于谁
    // // System.out.println(coll1.toString());
    Collection<String> coll1 = new ArrayList<>();
    String s1 = "hello";
    String s2 = new String("hello");
    coll1.add(s1);
    coll1.add(s2);
    coll1.add("hello");
    // ==
    // equals()
    System.out.println("coll1.size():" + coll1.size());// 3
    System.out.println("coll1:" + coll1);

    boolean flag0 = coll1.remove("hello");
    System.out.println("coll1.remove(\"hello\"):" + flag0);
    System.out.println("coll1.size():" + coll1.size());// 3
    System.out.println("coll1:" + coll1);

    boolean flag1 = coll1.remove("hello");
    System.out.println("coll1.remove(\"hello\"):" + flag1);
    System.out.println("coll1.size():" + coll1.size());// 3
    System.out.println("coll1:" + coll1);

    boolean flag2 = coll1.remove("hello");
    System.out.println("coll1.remove(\"hello\"):" + flag2);
    System.out.println("coll1.size():" + coll1.size());// 3
    System.out.println("coll1:" + coll1);

    // boolean flag1 = coll1.contains("hello");
    // System.out.println("coll1.contains(\"hello\"):" + flag1);

  }
}